package com.distributer.delayqueue;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.cloud.netflix.ribbon.RibbonClients;

@SpringBootApplication
@EnableEurekaClient
@RibbonClients
public class DelayQueueApplication {

	/**
	 * 通过redis实现延时队列。
	 * hash数据结构用于存储元数据
	 * set数据结构用于存储延时任务，通过set数据结构的score参数对任务进行排序
	 * list数据结构用于存储实时任务，通过list的先进先出特点，将已经到达执行时间的数据加入实时数据队列
	 */
	public static void main(String[] args) {
		SpringApplication.run(DelayQueueApplication.class, args);
	}

}
